class ThongKeGioHang
  include MongoMapper::Document

  before_save :mac_dinh

  key :nam_sinh,     Integer
  key :gioi_tinh,    Integer
  key :so_luong,     Integer
  belongs_to :san_pham
  timestamps!
  def mac_dinh
  end

  def self.them_gio_hang(gio_hang)
    nguoi_dung = gio_hang.nguoi_dung
    if nguoi_dung.ngay_sinh.present? && !nguoi_dung.gioi_tinh.nil? && nguoi_dung.gioi_tinh >= 0
      nam_sinh = nguoi_dung.ngay_sinh.strftime("%Y").to_i
      gioi_tinh = nguoi_dung.gioi_tinh
      mac_hang = gio_hang.san_pham_muas
      mac_hang.each do |item|
        if item.san_pham.danh_muc.slug == "ca_phe"
          record = ThongKeGioHang.where(:nam_sinh => nam_sinh, :gioi_tinh => gioi_tinh, :san_pham_id => item.san_pham_id).first
          if !record.present?
            record = ThongKeGioHang.create({
              nam_sinh: nam_sinh,
              gioi_tinh: gioi_tinh,
              san_pham_id: item.san_pham_id
            });
          end
        record.so_luong = record.so_luong.to_i + item.so_luong
        record.save
        end
      end

    end
  end
  
  def self.ca_phe_ua_chuong (nguoi_dung)
    nam_sinh = nguoi_dung.ngay_sinh.strftime("%Y").to_i
    gioi_tinh = nguoi_dung.gioi_tinh
    records = ThongKeGioHang.where(:nam_sinh => nam_sinh, :gioi_tinh => gioi_tinh).sort(:so_luong.desc).limit(5).all
  end 

end
